Day19 19단계 20231108
import java.util.*;
class Solution {
public String[] solution(String myStr) {
String[] answer = {};
myStr = myStr.replaceAll("[a-c]", " ");
if (myStr.isBlank()) {
return new String[] {"EMPTY"};
} else {
answer = myStr.strip().split("\\s+");
}
return answer;
}
}

String[] answer = {};
StringTokenizer st = new StringTokenizer(myStr, "abc");
if(st.countTokens() != 0) {
answer = new String[st.countTokens()];
for (int i = 0; i < answer.length; i++) {
answer[i] = st.nextToken();
}
} else {
return new String[] {"EMPTY"};
}
return answer;

import java.util.*;
class Solution {
public int[] solution(int[] arr) {
List<Integer> list = new ArrayList<>();
for (int i : arr) {
for (int j = 0; j < i; j++) {
list.add(i);
}
}
return list.stream().mapToInt(x->x).toArray();
}
}
return Arrays.stream(arr).boxed()
.flatMap(num -> Collections.nCopies(num, num).stream())
.mapToInt(x->x)
.toArray();
import java.util.*;
class Solution {
public int[] solution(int[] arr, boolean[] flag) {
Stack<Integer> stack = new Stack<>();
for (int i = 0; i < arr.length; i++) {
if(flag[i]) {
for (int j = 0; j < arr[i]*2; j++) {
stack.push(arr[i]);
}
} else {
for (int j = 0; j < arr[i]; j++) {
stack.pop();
}
}
}
return stack.stream().mapToInt(x->x).toArray();
}
}
import java.util.*;
class Solution {
public int[] solution(int[] arr) {
List<Integer> list = new ArrayList<>();
for (int i = 0; i < arr.length; i++) {
if(list.isEmpty()) {
list.add(arr[i]);
} else if (list.get(list.size()-1) == arr[i]) {
list.remove(list.size()-1);
} else {
list.add(arr[i]);
}
}
if (list.isEmpty()) return new int[] {-1};
return list.stream().mapToInt(x->x).toArray();
}
}
import java.util.*;
class Solution {
public int[] solution(int[] arr, int k) {
List<Integer> list = new ArrayList<>();
for (int i : arr) {
if (!list.contains(i) && list.size() < k) {
list.add(i);
}
}
while(list.size() < k) {
list.add(-1);
}
return list.stream().mapToInt(x->x).toArray();
}
}
return IntStream.concat(Arrays.stream(arr).distinct(),
IntStream.range(0, k).map(i -> -1))
.limit(k)
.toArray();